package HLA1.control;

import hla.rti.RTIexception;

/**
 *
 * @author lorenzo
 */
public class Main {

    public void startSim(Simulatore s) {

		
		int precedente =0; //una variabile di supporto...
		int osservazioni = 75000; //numero di osservazioni da prendere
		int step = 0; //step per la successiva osservazione
		double limit = 4.1922817;
		while(s.getTempoTotale()<200000.00){ //simulo per un tempo
			s.sequenziatore(); //sequenzio gli eventi agendo sul calendario

			//ad ogni nuovo job completato.....
			if(precedente!=s.getJobCompletati()){
				//controllo se ho il numero adatto ad eseguire l'esperimento...
				if(s.getJobCompletati()<=osservazioni){
					s.batchTempiRisposta(s.getJobCompletati());
					s.batchTempiAttesaCoda(s.getJobCompletati());
				}else{
					break;
				}

				precedente=s.getJobCompletati();
                System.out.println("Tempo totale: "+ s.getTempoTotale());

			}
            
		}
        System.out.println("Sono in fineSimulazione");
		s.fine = false;
		try {
			s.simulazione.sendInteraction("fine");
		} catch (RTIexception e) {
			e.printStackTrace();
		}
		try {
			s.simulazione.advanceTime(2.0);
		} catch (RTIexception e) {
			e.printStackTrace();
		}

		System.out.println("=========CODA=======");
		s.printValoriIidCoda();

		System.out.println("=========RISPOSTA=======");
		s.printValoriIidRisposta();
	}
}
